package 整数;

/**
 * @author: 大怪
 * @email: 962527441@qq.com
 */

/**
 * 题目：
 * 给你一个整数数组 nums ，除某个元素仅出现 一次 外，其余每个元素都恰出现 三次 。
 * 请你找出并返回那个只出现了一次的元素。
 *
 * 示例 1：
 *
 * 输入：nums = [2,2,3,2]
 * 输出：3
 */
public class 只出现一次的数字 {
    class Solution {
        public int singleNumber(int[] nums) {
            int r = 0;
            for (int i = 0; i < 32; i++) {
                int t = 0;
                for (int j : nums) {
                    t += j>>i &1;
                }
                t  = t%3;
                r += t<<i;
            }
            return r;
        }
    }
}
